package com.feonix.common.annotation;

import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.io.Serializable;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import com.feonix.common.basedao.BaseIdGenerator;
import com.feonix.common.basedao.DefaultIdGenerator;


@Documented
@Retention(RUNTIME)
@Target({FIELD})
public @interface Id {
	
	public abstract GeneratorType generatorType() default GeneratorType.NATIVE;
	
	public abstract Class<? extends BaseIdGenerator<? extends Serializable>> generator() default DefaultIdGenerator.class;
}
